package com.lam.dormitory.entity;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.IdType;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableLogic;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import jdk.nashorn.internal.ir.annotations.Ignore;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 *
 * </p>
 *
 * @author lam
 * @since 2019-12-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "DormitoryService对象", description = "")
public class DormitoryService implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "宿舍服务id")
    @TableId(value = "ds_id", type = IdType.AUTO)
    private Long dsId;

    @ApiModelProperty(value = "宿舍id")
    private Long dorId;
    @ApiModelProperty(value = "月份")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date dsMonth;

    @ApiModelProperty(value = "电费")
    private BigDecimal dsElectricBill;

    @ApiModelProperty(value = "电费详情（度）")
    private String dsElectricBillDetail;

    @ApiModelProperty(value = "水费")
    private BigDecimal dsWaterBill;

    @ApiModelProperty(value = "水费详情（吨）")
    private String dsWaterBillDetail;

    @ApiModelProperty(value = "网费")
    private BigDecimal dsInternetBill;

    @ApiModelProperty(value = "网费详情（包年 包月 包学期）")
    private String dsInternetBillDetail;

    @ApiModelProperty(value = "宿舍卫生等级 1优2良3差")
    private Integer dsDorHygiene;
    @ApiModelProperty(value = "宿舍卫生详情")
    private String dsDorHygieneDetail;

    @ApiModelProperty(value = "宿舍状态：0已删除; 1未删除")
    @TableLogic
    private Integer status;
    @TableField(exist = false)//该字段在数据库不存在
    private String startTime;
    @TableField(exist = false)
    private String endTime;
    @TableField(exist = false)
    private Integer buildingNo;
//    @TableField(exist = false)
//    private Integer startBuildingNo;
//    @TableField(exist = false)
//    private Integer endBuildingNo;

}
